#ifndef __PWBOX_H__
#define __PWBOX_H__

// #define PWBOX_DEBUG
#define PWBOX_USE_HISTORY

#ifdef PWBOX_USE_HISTORY
    #ifndef PWBOX_HISTORY_LINES
        #define PWBOX_HISTORY_LINES 12
    #endif
#endif

#define PWBOX_CMD_BUF_LEN 512

#define PWBOX_SCRIPT_PATH "/Users/Share/Init.xsh"

typedef NX_Error (*PowerBoxCmdHandler)(int argc, char *argv[], char * envline);

typedef struct PowerBoxCmd
{
    char *name;
    char *info;
    PowerBoxCmdHandler handler;
} PowerBoxCmd;

#define PWBOX_MAX_ARGS 1024

NX_Error PowerBoxRunBuiltinCmd(char * appName, char * cmd, char * env);

NX_Error PowerBoxSetCwd(char *buf);
NX_Error PowerBoxGetCwd(char *buf);
NX_Error PowerBoxPrintHelp(void);

#endif /* __PWBOX_H__ */